The present invention relates to a motor controller that adequately regulates a voltage applied from a power source to a coil of a motor, thereby controlling operation of the motor, and also to a corresponding motor controlling method.
Various motors are used for industrial machinery and railcars. Recently proposed hybrid vehicles also use a motor as part of the power source. The motor is rotated by interaction of magnetic fields generated by a stator and a rotor. At least one of the magnetic fields is generated by power supply to a motor coil. In the case of a permanent magnet-type synchronous motor, permanent magnets are attached to a rotor, whereas a coil is wound on a stator. Supply of a multi-phase alternating current through the coil of the stator produces a revolving magnetic field on the stator. In the synchronous motor, the rotor is rotated synchronously with the revolving magnetic field thus generated.
The motor operation is controlled by regulating the voltage applied to the coil and thereby regulating the electric current running through the coil. For example, in order to output a large torque, the control increases the voltage applied to the coil to enhance the electric current and generate a strong magnetic field. In order to output a small torque, on the other hand, the control decreases the voltage applied to the coil to reduce the electric current and generate a weak magnetic field.
An inverter is often used to regulate the voltage applied to the coil. The inverter is a circuit of converting a DC voltage into an AC voltage and has pairs of switching elements, where the switching elements in each pair respectively connect with the source and the sink of a power source of a fixed voltage. The voltage applied to the coil is varied by changing a duty, that is, the on rate of the switching elements per unit time. Raising the duty on the source side increases the output voltage. Lowering the duty, on the other hand, decreases the output voltage. In order to regulate the voltage applied to the coil to a desired value, it is required to drive the inverter at an appropriate duty according to the source voltage.
The prior art technique sets a target voltage to be applied to the motor coil in response to a required torque and specifies the duty based on a source voltage measured with a sensor, in order to attain the setting. The motor operation is then controlled through the on-off operation of the switching elements included in the inverter at the specified duty.
The prior art control method may not, however, sufficiently control the motor operation. The sensor used for measuring the source voltage may cause an error for example, due to the factors of the environment, in which the motor is used. The error arises as an offset error where the observed value is deviated from a true value in either the positive direction or in the negative direction. The quantity of the offset is varied by the environmental and other factors.
The prior art technique controls the motor operation without considering the potential effects of the offset error. As mentioned above, the voltage applied to the motor coil is regulated by adjusting the duty of the inverter on the basis of the source voltage. An error included in the source voltage interferes with application of a desired voltage to the coil. The prior art control technique thus does not ensure accurate output of the required torque.
The detection error of the source voltage further causes the following troubles in the control of the synchronous motor. As discussed previously, the synchronous motor is driven by the revolving magnetic field, which rotates at a speed synchronous with the revolving speed of the rotor. In order to generate such a magnetic field, power supply to the coil is required according to the electrical rotational angle of the rotor, that is, the electrical angle. A sensor like a Hall element is generally used for detection of the electrical angle. The technique of sensor-less detection of the electrical angle has also been proposed to simplify the structure of the motor controller and thereby enhance the reliability.
The process of sensor-less detection of the electrical angle tentatively estimates the electrical angle to a certain value and applies a preset electrical angle detection voltage to the motor coil. The process then measures the electric current running through the coil in response to the applied electrical angle detection voltage. The relationship between the voltage and the current is expressed by a voltage equation. When no error is included in the estimated electrical angle, this equation is equal to zero. When the estimated electrical angle includes some error, the result of the voltage equation is deviated from zero according to the quantity of the error. An error or a difference between the estimated electrical angle and a true value may be specified, based on the deviation of the result of the voltage equation.
Application of the electrical angle detection voltage with a high accuracy is required for accurate sensor-less detection of the electrical angle. The value of the electrical angle detection voltage is also regulated by adjusting the duty according to the source voltage. The prior art technique does not take into account the value of source voltage in the process of application of the electrical angle detection voltage. The value of the electrical angle detection voltage is thus varied, due to the detection error of the source voltage. This may lower the accuracy of detection of the electrical angle. The lowered accuracy of detection of the electrical angle may cause troubles, such as pulsation of the torque, and damage the smooth operation of the motor.
A variety of apparatuses with a motor have been proposed recently, and there has been a high demand to enhance the accuracy of the motor operation control. Under such circumstances, the decrease in accuracy due to the error of the source voltage is thus not negligible. In some apparatuses using the motor as the power source, the power source may have an extremely high voltage. In such apparatuses, the effect of the error included in the source voltage is especially significant.
The object of the present invention is thus to provide a technique that relieves the drawbacks due to a detection error of a voltage applied to a motor coil and thereby adequately controls motor operation. In order to attain this and the other related objects, the present invention is arranged as discussed below.
The present invention is directed to a motor controller that regulates a voltage applied from a power source to a coil of a motor and thereby controls operation of the motor. The motor controller includes: a voltage estimation unit that estimates a voltage of the power source; a detection voltage application unit that applies a preset detection voltage to the coil, based on the estimated voltage; an electric current detection unit that measures a value of electric current running through the coil in response to the applied detection voltage; an error specification unit that specifies an error included in the estimated voltage, based on the estimated voltage and the observed value of electric current; and an operation control unit that reflects the specified error on control of the operation of the motor.
The motor controller of the above arrangement reflects the error included in the source voltage on the control. For example, when the absolute value of the error is greater than a preset value, the technique of the invention determines the occurrence of some abnormality and carries out a separately provided control process. The separately provided control process may be an additional process that is carried out in addition to a general control procedure or a substitutive process that is carried out in place of the general control procedure. The additional process that is carried out in addition to the general control procedure is, for example, a process of calibrating the source voltage or a process of informing a driver of the occurrence of some abnormality. The substitutive process that is carried out in place of the general control procedure is, for example, an abnormal-time control process to restrict the output torque within a predetermined range.
In accordance with one application of the error-reflected motor operation control, the operation control unit has a voltage application control unit that applies a predetermined voltage according to a working state of the motor to the coil by taking into account the specified error.
The motor controller of this embodiment ensures application of an appropriate voltage according to the working state of the motor by taking into account the error included in the estimated source voltage. This arrangement thus desirably enhances the accuracy of the operation control of the motor.
As discussed previously, the voltage applied to the motor coil is generally controlled by regulating a driving circuit, such as an inverter, according to the source voltage. The prior art technique carries out control on the assumption that the source voltage measured with a sensor is a true value. The motor controller of the present invention, on the other hand, tentatively estimates the source voltage to a certain value. The detection voltage application unit applies the detection voltage, based on the estimated voltage. When there is an error or a difference between the estimated voltage and the true value, the applied detection voltage is deviated from a preset value. The error of the applied detection voltage is detected as the difference between the electric current actually running through the coil in response to the applied voltage and the electric current to be run through the coil when the estimated voltage is the true value. The error of the estimated source voltage is thus specified, based on the detected error. The motor controller of the present invention enables an appropriate voltage to be applied to the coil by taking into account the specified error.
In the motor controller of the present invention, the voltage estimation unit may have any of diverse arrangements. One example assumes that the source voltage is a fixed value. This simplifies the general structure of the motor controller and the whole series of processing.
The voltage estimation unit may carry out the estimation, based on a measurement result of a voltage of the power source. This arrangement restricts the error or difference between the estimated voltage and the true value within a relatively small range, thus ensuring adequate reflection of the error.
The application of the detection voltage may be implemented by regulating the driving circuit, such as the inverter, to apply a fixed voltage or by keeping the control state of the driving circuit constant. In the former case, the control state of the driving circuit changes according to the estimated source voltage. This leads to a variation in voltage applied to the coil. In the latter case, the actual variation of the source voltage directly appears as a variation of the voltage applied to the coil. In either case, when the estimated voltage includes an error, a voltage deviated from the required detection voltage is applied to the coil. The latter case corresponds to the state in which the estimated source voltage is fixed to a certain value.
In the motor controller of the present invention, the error specification unit may also have any of diverse arrangements.
In one preferable embodiment, the error specification unit has: a storage unit that stores a mapping of the voltage to the value of electric current; and an error computation unit that refers to the mapping to specify the error.
This arrangement refers to the storage unit and specifies the value of electric current to be detected on the assumption that the estimated source voltage is the true value. The actual source voltage is, on the other hand, calculated from the observed electric current. These calculations quantitatively determine an error between the estimated value and the true value. The storage unit may store the voltage-current relationship in the form of a function or in the form of a table. The function advantageously reduces the required storage capacity, whereas the table adequately represents the voltage-current relationship even having a significant degree of non-linearity, which is not expressible by the function.
The error specification unit is not restricted to the structure of quantitatively determining the error, but may be constructed to determine occurrence or non-occurrence of an error. One example of such construction stores the value of electric current to be detected in response to a preset detection voltage and compares the stored value of electric current with the observed value of electric current. When the occurrence or non-occurrence of an error is determined, the motor control with reflection of the error may be attained by successively changing the estimated source voltage and repeatedly applying the detection voltage.
The motor controller of the present invention is not restricted to the AC motor or the DC motor but is applicable to a diversity of motors that control the operation by regulating the voltage applied to the coil based on the source voltage. The motor controller may be constructed as discussed below in the case of application to a specific motor.
In one embodiment, when the motor controller of the present invention is applied to a motor rotating with a multi-phase alternating current, the motor controller has an electrical angle detection unit that detects an electrical angle of a rotor included in the motor. The detection voltage application unit applies the detection voltage to a specific phase set in advance for each electrical angle as a phase having a remarkable variation in value of electric current in response to the voltage.
In the motor rotating with the multi-phase alternating current, as is known, a variation in inductance of each phase coil according to the electrical angle changes the relationship between the voltage applied to each phase coil and the electric current in response to the applied voltage. The variation in electrical angle also changes the effect of the error included in the source voltage with regard to each phase. The target phase suitable for specifying the effect of the error included in the source voltage is thus selected according to the electrical angle. The above application utilizes such characteristics and selects the target phase suitable for specification of the error according to the electrical angle, thus ensuring accurate specification of the error. From this point of view, the target phase suitable for specification of the error may be selected arbitrarily as the phase having a remarkable variation in value of electric current by taking into account the accuracy of the electric current detection unit. This is not restricted to the phase having a maximum variation in value of electric current at each electrical angle.
In another embodiment, when the motor controller of the present invention is applied to a motor rotating with a multi-phase alternating current, the motor controller has an electrical angle detection unit that detects an electrical angle of a rotor included in the motor. The detection voltage application unit applies the detection voltage in a predetermined direction, which rotates with a rotation of the rotor and is specified by the observed electrical angle.
In the above application, it is not required to store the relationship between the detection voltage and the electric current with regard to each phase nor to select the target phase suitable for specification of the error. This arrangement thus desirably reduces the required storage capacity and simplifies the whole series of processing. The motor rotating with the multi-phase alternating current is driven by the revolving magnetic field, which rotates synchronously with the rotor. Vector control is often applied to control the revolving magnetic field. The vector control sets the axis rotating with the rotation of the rotor and regulates the intensity of the magnetic field in the direction of the preset axis in response to a required torque. The advantage of this method is relatively easy regulation of the intensity and the direction of the magnetic field. When the vector control is adopted in control of the motor operation, the detection voltage may be applied to the axis used in the control. This desirably simplifies the general structure of the motor controller and the whole series of processing.
In the above embodiment, the predetermined direction rotating with the rotation of the rotor is not restricted to the direction used for the vector control but may be any suitable direction.
When the motor is a synchronous motor, it is desirable that the predetermined direction passes through a rotation center of the rotor and is coincident with a magnetic flux of the rotor.
In the synchronous motor, the direction that passes through the rotation center of the rotor and is coincident with the magnetic flux of the rotor (hereinafter referred to as the xe2x80x98dxe2x80x99 axis direction) and the direction perpendicular to the xe2x80x98dxe2x80x99 axis direction in the plane of rotation of the rotor (hereinafter referred to as the xe2x80x98qxe2x80x99 axis direction) are generally used for vector control. The xe2x80x98qxe2x80x99 axis direction mainly affects the generation of the motor torque. In the above application, the detection voltage is applied in the xe2x80x98dxe2x80x99 axis direction. This arrangement effectively suppresses the generation of the torque by the application of the detection voltage. This arrangement accordingly prevents the occurrence of vibrations, due to a variation in motor torque in the process of specifying the error included in the source voltage.
In the motor controller of the present invention, the specification of the error may be performed at various timings.
In one preferable embodiment, the motor controller has an error specification control unit that utilizes the voltage estimation unit, the detection voltage application unit, the electric current detection unit, and the error specification unit to specify the error, when the motor starts rotation.
The motor controller of this application specifies the error only at the activation time when the motor starts rotation. In general, the source voltage does not significantly vary during the operation of the motor. In the case of measuring the voltage with a sensor, there is no significant variation in offset during the motor rotation. At the time of motor activation, on the contrary, the estimated source voltage often includes a significant error, due to the environmental conditions during the motor stop. The motor controller of the above application specifies the error at the motor activation time, thus enabling the operation of the motor to be adequately controlled even at the beginning of the motor operation. The arrangement of not specifying the error after the start of the motor operation desirably shortens the time required for the motor control during its operation and enables the motor to be adequately controlled during high-speed operation.
In the motor controller of the present invention, the voltage estimation unit, the detection voltage application unit, the electric current detection unit, and the error specification unit may be activated just once to specify the error. In another preferable embodiment, the motor controller has an error convergence control unit that reflects the error specified by the error specification unit on the estimation carried out by the voltage estimation unit, and iteratively utilizes the voltage estimation unit, the detection voltage application unit, the electric current detection unit, and the error specification unit to make the error converge within a predetermined range.
The arrangement of using the respective units only once advantageously shortens the time required for specification of the error. The arrangement of iteratively using the respective units for convergence of the error, on the other hand, advantageously specifies the error with a higher accuracy and ensures accurate control of the motor operation. The application including the error convergence control unit is especially preferable when the relationship between the error of the source voltage and the value of electric current in response to the applied voltage has a significant degree of non-linearity.
In the motor controller of the present invention, the specified error may be reflected on the motor control in various manners.
In one preferable embodiment, the voltage application control unit has: a torque voltage setting unit that sets a torque voltage to be applied to the coil in response to a required torque to be output from the motor; and a unit that applies the torque voltage by taking into account the error.
This application enables the appropriate torque voltage to be applied by taking into account the error included in the source voltage. The output torque of the motor is thus made coincident with the required torque with high accuracy. A variety of methods may be adopted in reflection of the specified error. A first available method reflects the specified error on the source voltage itself used to set the duty based on the target voltage to be applied. In this case, the estimated voltage may be corrected with the specified error. When the true value of the source voltage is specified by the error specification unit, the estimated voltage may be replaced with the true value. A second available method corrects a preset duty, which has been set tentatively based on the estimated source voltage, with the error specified by the error specification unit. Another available method corrects the value of torque voltage with the specified error.
In the case where the motor is a salient-pole synchronous motor, the specified error may be reflected on the motor control in the following application.
In this application, the motor controller has an electrical angle computation unit that computes an electrical angle of the coil, based on a preset electrical angle detection voltage applied to the coil and an observed value of electric current running in response to the applied voltage. The operation control unit applies the electrical angle detection voltage by taking into account the error.
This application uses the electrical angle computation unit that detects the electrical angle of the salient-pole synchronous motor in a sensor-less manner. The sensor-less computation of the electrical angle is attained by utilizing the relationship between the detection voltage applied to the coil and the value of electric current running through the coil in response to the applied voltage. This arrangement enables the appropriate detection voltage to be applied by taking into account the error of the source voltage. This leads to accurate computation of the electrical angle and ensures adequate control of the motor operation.
The following describes one typical method of sensor-less computation of the electrical angle. On the premise that the motor is driven at a relatively high speed, the electrical angle is calculated according to voltage equations (1) and (2) given below:
Vdxe2x88x92Rxc2x7Idxe2x88x92p(Ldxc2x7Id)+xcfx89xc2x7Lqxc2x7Iq=0xe2x80x83xe2x80x83(1)
Vqxe2x88x92Rxc2x7Iqxe2x88x92p(Lqxc2x7Iq)xe2x88x92xcfx89xc2x7Ldxc2x7Idxe2x88x92E=0xe2x80x83xe2x80x83(2)
Here V denotes the voltage applied to the motor, I denotes the value of electric current running through the motor coiling, and L denotes the inductance of the coiling. The subscripts xe2x80x98dxe2x80x99 and xe2x80x98qxe2x80x99 attached to V, I, and L represent the values in the xe2x80x98dxe2x80x99 axis direction and in the xe2x80x98qxe2x80x99 axis direction of the motor, respectively. In the above equations, R denotes the resistance of the motor coiling, xcfx89 denotes the electrical rotational angular velocity of the motor, and E denotes the electromotive force generated by rotation of the motor. The electrical angular velocity xcfx89 is obtained by multiplying the mechanical angular velocity of the motor by the number of pole pairs. In the above equations, p is a time differential operator and is expressed as:
p(Ldxc2x7Id)=d(Ldxc2x7Id)/dt
The above voltage equations (1) and (2) are always held with regard to the axis xe2x80x98dxe2x80x99 and the axis xe2x80x98qxe2x80x99. In the sensor-less motor control, the motor controller first solves the above equations, based on a certain estimated electrical angle xcex8c (see FIG. 4). The result includes an arithmetic error corresponding to an error angle xcex94xcex8 between the estimated electrical angle xcex8c and the actual electrical angle xcex8. Calculating the voltage equations (1) and (2) with the calculated values of electric currents and voltages makes these equations not equal to 0. Correction by taking into account the errors of the equations (1) and (2) calculated with the electrical angle at the previous timing and the voltages and electric currents at the current timing specifies the electrical angle at the current timing.
A concrete example of the computation of the electrical angle is given below. Substitution of the time difference (variation/time) into the time differential (d/dt) in the voltage equations (1) and (2) gives equations (3) to (5):                                                                         Δ                ⁢                                  xe2x80x83                                ⁢                Id                            =                                                Id                  ⁡                                      (                    n                    )                                                  -                Idm                                                                                        =                                                Id                  ⁡                                      (                    n                    )                                                  -                                  Id                  ⁡                                      (                                          n                      -                      1                                        )                                                  -                                                      t                    ⁡                                          (                                              Vd                        -                        RId                        +                                                  ω                          ⁢                                                      xe2x80x83                                                    ⁢                          LqIq                                                                    )                                                        /                  Ld                                                                                        (        3        )                                                                                    Δ                ⁢                                  xe2x80x83                                ⁢                Iq                            =                                                Iq                  ⁡                                      (                    n                    )                                                  -                Iqm                                                                                        =                                                Iq                  ⁡                                      (                    n                    )                                                  -                                  Iq                  ⁡                                      (                                          n                      -                      1                                        )                                                  -                                                      t                    ⁡                                          (                                              Vq                        -                        RIq                        -                                                  ω                          ⁢                                                      xe2x80x83                                                    ⁢                          LdId                                                -                                                  E                          ⁡                                                      (                                                          n                              -                              1                                                        )                                                                                              )                                                        /                  Lq                                                                                        (        4        )                                          E          ⁡                      (            n            )                          =                              E            ⁡                          (                              n                -                1                            )                                -                                    kk1              ·              Δ                        ⁢                          xe2x80x83                        ⁢            Iq                                              (        5        )            
Here Id and Iq denote the electric currents of the axes xe2x80x98dxe2x80x99 and xe2x80x98qxe2x80x99, that is, the magnetizing current and the torque current. Ld and Lq denote the inductances in the xe2x80x98dxe2x80x99 axis direction and the xe2x80x98qxe2x80x99 axis direction. Vd and Vq denote the voltages applied to the coils. The suffixes such as (n) attached to the respective variables are on the premise that the operation is periodically repeated; (n) represents the value at the current timing and (nxe2x88x921) represents the value at the previous timing. Idm and Iqm show theoretical values of electric currents calculated according to the voltage equations on the assumption that model values of the magnetizing current and the torque current, that is, the estimated electrical angle, are correct. The period of the operation is the time xe2x80x98txe2x80x99 in the above equations.
The time differential term of each voltage equation is expanded as given below, on the premise that the inductance is fixed:
p(Ldxc2x7Id)=Ldxc2x7p(Id)
p(Lqxc2x7Iq) is expanded similarly.
In the above equations, xcfx89 denotes the rotational angular velocity of the motor and is expressed by the unit of rad/sec. The angular velocity xcfx89 is related to the revolving speed N (rpm) of the motor and the number of pole pairs Np and is expressed as xcfx89=2xcfx80xc2x7Npxc2x7N/60. Here kk1, which relates the electromotive forces E(n) and E(nxe2x88x921) to xcex94Iq, represents a gain used for the computation of the electrical angle and is experimentally determined.
The electrical angle xcex8(n) at the current timing is calculated from the electrical angle xcex8(nxe2x88x921) at the previous timing according to equation (6) given below using the calculated values of xcex94Id, xcex94Iq, and E(n):
xcex8(n)=xcex8(nxe2x88x921)+tE(n)/kk2+sgnxc2x7kk3xc2x7xcex94Idxe2x80x83xe2x80x83(6)
Here sgn is xe2x80x98+xe2x80x99 when xcfx89 greater than 0 and xe2x80x98xe2x88x92xe2x80x99 when xcfx89 less than 0. Since the above discussion is on the premise that the motor is driven at a high speed, the motor stop condition, that is, the condition of xcfx89=0, is not considered. Like kk1, kk2 and kk3 represent gains used for the computation of the electrical angle and are determined experimentally.
A diversity of methods other than the method discussed above have been proposed for the sensor-less detection of the electrical angle. Any proposed method computes the electrical angle, based on the preset detection voltage and the value of electric current in response to the detection voltage. The technique of the present invention is thus not restricted to the above method but is applicable to the diversity of methods of sensor-less detection of the electrical angle, in order to enhance the accuracy of detection of the electrical angle.
In the arrangement of sensor-less detection of the electrical angle, it is desirable that the electrical angle computation unit computes the electrical angle by using a physical quantity, which is not affected by a potential error included in the electrical angle detection voltage, as a parameter, when the motor stops operation.
The effect of the error included in the estimated source voltage on the variation in electric current varies according to the electrical angle. In order to specify the error with high accuracy, it is desirable to utilize a table relating to the electrical angle for the processing. For the sensor-less detection of the electrical angle, on the other hand, it is required to apply a preset electrical angle detection voltage. There is a possibility that neither the error nor the electrical angle detection voltage is specified with a sufficient accuracy, in the case where errors are included in both the electrical angle and the estimated source voltage.
The motor controller of the above application computes the electrical angle by using a physical quantity, which is not affected by the potential error included in the electrical angle detection voltage, as the parameter when the motor stops operation. The technique disclosed in JAPANESE PATENT LAID-OPEN GAZETTE No. 7-177788 is applicable for the computation. For example, a deviation of electric current running between two phases may be used for the parameter. Using such a parameter enables the electrical angle to be accurately detected even when the estimated source voltage includes an error under the motor stop condition. The accurate detection of the electrical angle leads to accurate specification of the error included in the estimated value. The motor controller of the above application thus ensures the accurate sensor-less control.
The above description regards the case of making the error of the source voltage reflected on the control of the torque voltage and the case of making the error of the source voltage reflected on the electrical angle detection voltage. The error may be reflected on both or either one of the control of the torque voltage and the electrical angle detection voltage.
The technique of the present invention is not restricted to the motor controller, but may be attained by a diversity of other applications, for example, a motor controlling method. Another application is a power output apparatus and other equipment with the motor controller of the present invention mounted thereon.